import urlConfig from "../common/config.js"
import store from "../store/index.js"


const request = {}
const headers = {}
    
request.globalRequest = (url, method, data, power) => {
/*     权限判断 因为有的接口请求头可能需要添加的参数不一样，所以这里做了区分
    1 == 不通过access_token校验的接口
    2 == 文件下载接口列表 */
        
    switch (power){
        case 1:
            headers['Authorization'] = ''
            break;
        case 2:
            headers['Authorization'] = 'Basic a3N1ZGlfcGM6a3N1ZGlfcGM='
            break;
        default:
			let token = store.getters.token
			if(token)
				headers['Authorization'] = "Bearer " + store.getters.token
			else{
				uni.reLaunch({
				  url: '../index/index',
				})
				return
			}
            // headers['TENANT-ID'] = this.$store.getters.userInfo.tenant_id
            break;
    }
	
	headers[`Content-type`] = `application/x-www-form-urlencoded`
    return uni.request({
        url: urlConfig + url,
        method,
        data: data,
        // dataType: 'json',
        header: headers
    }).then((res) => {
		// console.log("res"+JSON.stringify(res))
        if (res[1].data.status && res[1].data.status == 200) {
            return res[1]
        } else {
            throw res[1].data
        }
    }).catch(parmas => {
　　　　　　switch (parmas.status) {
　　　　　　　　case 401:
　　　　　　　　　　uni.clearStorageSync()
　　　　　　　　　　break
　　　　　　　　default:
				uni.hideToast({
					complete: () => {
						uni.showToast({
		　　　　　　　　　　　　title: parmas.msg,
		　　　　　　　　　　　　icon: 'none'
		　　　　　　　　　　})
					}
				});
　　　　　　　　　　
　　　　　　　　　　return Promise.reject()
　　　　　　　　　　break
　　　　　　}
　　})
 } 

export default request